Skip to content

Comments

OSASINFRA-3980: Migrate asset generation to ocp-manifests#386

Open
stephenfin wants to merge 6 commits intoopenshift:mainfrom
shiftstack:migrate-to-ocp-manifests
Open

OSASINFRA-3980: Migrate asset generation to ocp-manifests#386
stephenfin wants to merge 6 commits intoopenshift:mainfrom
shiftstack:migrate-to-ocp-manifests

Conversation

@stephenfin
Copy link

@stephenfin stephenfin commented Dec 5, 2025

This aligns us with the other providers and should ease the maintenance burden somewhat.

Note

manifests-gen is currently being rewritten, so there's a good chance we won't end up merging a lot of this. We likely want the initial patch to remove Makefile targets along with the Dockerfile changes, however. The series has been reworked to reflect this change. See the below for other examples of providers migrating to the new manifests-gen (albeit from the old manifests-gen, rather than something in-tree):

@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Dec 5, 2025
@openshift-ci
Copy link

openshift-ci bot commented Dec 5, 2025

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@openshift-ci
Copy link

openshift-ci bot commented Dec 5, 2025

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign stephenfin for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@stephenfin stephenfin changed the title WIP: Migrate asset generation to ocp-manifests OSASINFRA-3980: Migrate asset generation to ocp-manifests Jan 7, 2026
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jan 7, 2026
@openshift-ci-robot
Copy link

openshift-ci-robot commented Jan 7, 2026

@stephenfin: This pull request references OSASINFRA-3980 which is a valid jira issue.

Details

In response to this:

This aligns us with the other providers and should ease the maintenance burden somewhat.

[!NOTE]
manifests-gen is currently being rewritten, so there's a good chance we won't end up merging a lot of this. We likely want the initial patch to remove Makefile targets along with the Dockerfile changes, however.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@stephenfin stephenfin force-pushed the migrate-to-ocp-manifests branch from cfbf0e2 to 873cc7d Compare February 23, 2026 13:11
@stephenfin stephenfin marked this pull request as ready for review February 23, 2026 14:55
@openshift-ci openshift-ci bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Feb 23, 2026
@stephenfin stephenfin force-pushed the migrate-to-ocp-manifests branch from 873cc7d to 696084c Compare February 23, 2026 14:57
@openshift-ci openshift-ci bot requested review from gryf and mandre February 23, 2026 15:01
@stephenfin stephenfin force-pushed the migrate-to-ocp-manifests branch 3 times, most recently from 0ab1345 to 3bc3a76 Compare February 24, 2026 13:46
@openshift-ci-robot
Copy link

openshift-ci-robot commented Feb 24, 2026

@stephenfin: This pull request references OSASINFRA-3980 which is a valid jira issue.

Details

In response to this:

This aligns us with the other providers and should ease the maintenance burden somewhat.

[!NOTE]
manifests-gen is currently being rewritten, so there's a good chance we won't end up merging a lot of this. We likely want the initial patch to remove Makefile targets along with the Dockerfile changes, however. The series has been reworked to reflect this change. See the below for other examples of providers migrating to the new manifests-gen (albeit from the old manifests-gen, rather than something in-tree):

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@stephenfin stephenfin force-pushed the migrate-to-ocp-manifests branch from 3bc3a76 to 3177993 Compare February 24, 2026 14:04
@stephenfin
Copy link
Author

/test e2e-openstack-capi-techpreview

@stephenfin stephenfin force-pushed the migrate-to-ocp-manifests branch 2 times, most recently from 4aff9d1 to 09eef30 Compare February 24, 2026 18:12
As noted by the cloud team:

  None of those are required. They were actually never required because
  they're CVO annotations, and these manifests aren't being handled by
  CVO.

This helps reduce the diff between what we're generating with our
current tooling at the new manifests-gen tooling in the future.

Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
The VAP simply prevents the deletion of the InfraCluster resource and is
a gap in our previous tooling: manifest-gen has had this functionality
for a few years [1]. By adding it now, we minimise the size of our diff
when we migrate to that tool.

[1] openshift/cluster-capi-operator#196

Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
This lets us work like everyone else. 'Makefile' changes are simply [1]
appended to the end of our existing 'openshift/Makefile' file, while the
'openshift/tools/tools.go' and 'openshift/tools/go.mod' are taken from
[2] and [3], respectively.

[1] https://github.com/openshift/cluster-api-provider-gcp/blob/release-4.22/openshift/Makefile
[2] https://github.com/openshift/cluster-api-provider-gcp/blob/release-4.22/openshift/tools/tools.go
[2] https://github.com/openshift/cluster-api-provider-gcp/blob/release-4.22/openshift/tools/go.mod

Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Invoke our new makefile target. In the future, this should happen
automatically.

  ❯ make -C openshift ocp-manifests PROVIDER_VERSION=v0.14.0

Because the previous manifest file was a (very) large YAML file with a
serialized YAML file within, we need to do some manipulation and use a
semantic diff tool (dyff [1]) to compare the output. This was achieve
like so:

  ❯ yq '.data.components' < openshift/manifests/0000_30_cluster-api-provider-openstack_04_infrastructure-components.yaml > old.yaml
  ❯ dyff between old.yaml openshift/capi-operator-manifests/default/manifests.yaml

This highlights the addition of empty `.status` and `.spec.strategy`
keys to the `capo-controller-manager` Deployment and some reordering
changes but nothing further.

[1] https://github.com/homeport/dyff

Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Rework our OpenShift-specific Dockerfile and Makefile to align with
those used for other providers.

Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
This is now handled by CCAPIO's manifest-gen.

Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
@stephenfin stephenfin force-pushed the migrate-to-ocp-manifests branch from 09eef30 to e2838b7 Compare February 24, 2026 18:52
@openshift-ci
Copy link

openshift-ci bot commented Feb 24, 2026

@stephenfin: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-openstack-capi-techpreview e2838b7 link true /test e2e-openstack-capi-techpreview
ci/prow/e2e-hypershift e2838b7 link true /test e2e-hypershift

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants